Developer(s) | Oracle Corporation |
---|---|
Stable release | 2.0 / October 10, 2011 |
Operating system | Java Runtime Environment |
Platform | Cross-platform |
Available in | Java |
Type | Rich Internet applications |
License | EULA, parts under GPL+linking exception[1] |
Website | http://javafx.com/ |
Java Card | |
---|---|
Micro Edition (ME) | |
Standard Edition (SE) | |
Enterprise Edition (EE) | |
JavaFX | |
PersonalJava (discontinued) |
JavaFX is a software platform for creating and delivering rich Internet applications that can run across a wide variety of connected devices. The current release (JavaFX 1.3, April 2010) enables building applications for desktop, browser and mobile phones. TV set-top boxes, gaming consoles, Blu-ray players and other platforms are planned.
To build JavaFX apps developers use a statically typed, declarative language called JavaFX Script; Java code can be integrated into JavaFX programs. JavaFX is compiled to Java bytecode, so JavaFX applications run on any desktop and browser that runs the Java Runtime Environment (JRE) and on top of mobile phones running Java ME.
On desktop, the current release supports Windows XP, Windows Vista and Mac OS X operating systems. Beginning with JavaFX 1.2, Oracle has released beta versions for Linux and OpenSolaris.[2] On mobile, JavaFX is capable of running on multiple mobile operating systems, including Symbian OS, Windows Mobile, and proprietary real-time operating systems.
Commentators have speculated JavaFX will compete on the desktop with Adobe AIR, Apache Pivot, OpenLaszlo and Microsoft Silverlight.
Contents |
Common profile. JavaFX is based on the concept of a “Common profile” that is intended to span across all devices supported by JavaFX. This approach makes it possible for developers to use a common programming model while building an application targeted for both desktop and mobile devices and to share much of the code, graphics assets and content between desktop and mobile versions. To address the need for tuning applications on a specific class of devices, the JavaFX 1.1 platform includes APIs that are desktop or mobile-specific. For example JavaFX Desktop profile includes Swing and advanced visual effects.
Drag-to-Install. From the point of view of the end user “Drag-to-Install” allows them to drag a JavaFX widget (or application residing in a website and is visible within the browser window) and drop it onto their desktop. The application will not lose its state or context even after the browser is closed. An application can also be re-launched by clicking on a shortcut that gets created automatically on the user's desktop. This behavior is enabled out-of-the-box by the Java applet mechanism and is leveraged by JavaFX from the underlying Java layer. Sun touts “Drag-to-Install” as opening up of a new distribution model and allowing developers to “break away from the browser”.
Integrating graphics created with third-party tools. JavaFX includes a set of plug-ins for Adobe Photoshop and Illustrator that enable advanced graphics to be integrated directly into JavaFX applications. The plug-ins generate JavaFX Script code that preserves layers and structure of the graphics. Developers can then easily add animation or effects to the static graphics imported. There is also an SVG graphics converter tool (a.k.a. Media Factory) that allows for importing graphics and previewing assets after the conversion to JavaFX format.
Sun Microsystems licensed a custom typeface called Amble for use on JavaFX powered devices. The font family was designed by mobile user interface design specialists Punchcut and is available as part of the JavaFX SDK 1.3 Release.
Current release of JavaFX platform includes the following components:
JavaFX Script, the scripting component of JavaFX, began life as a project by Chris Oliver called F3.[3]
Sun Microsystems first announced JavaFX at the JavaOne Worldwide Java Developer conference on May 2007.
In May 2008 Sun Microsystems announced plans to deliver JavaFX for the browser and desktop by the third quarter of 2008, and JavaFX for mobile devices in the second quarter of 2009. Sun also announced a multi-year agreement with On2 Technologies to bring comprehensive video capabilities to the JavaFX product family using the company's TrueMotion Video codec.
Since end of July 2008, developers could download a preview of the JavaFX SDK for Windows and Macintosh, as well as the JavaFX plugin for NetBeans 6.1. On December 4, 2008 Sun released JavaFX 1.0.
JavaFX for mobile development was finally made available as part of the JavaFX 1.1 release announced officially on February 12, 2009.
JavaFX 1.2 was released at JavaOne on June 2, 2009. This release introduced:[4]
JavaFX 1.3 was released on April 22, 2010. This release introduced[5]:
This version was released on August 21, 2010. This release introduced:
This version was released on October 10, 2011. This release introduced:
Various improvements have been made within the JavaFX libraries for multithreading. The Task APIs have been updated to support much more concise threading capabilities (i.e. the JavaTaskBase class is no longer necessary since all the APIs are in Java, and the requirement to have a callback interface and Java implementation class are no longer necessary). In addition, the scene graph has been designed to allow scenes to be constructed on background threads and then attached to "live" scenes in a threadsafe manner.
On May 26, 2011, Oracle released the JavaFX 2.0 Beta. The beta release was only made available for 32 and 64 bit versions of Microsoft Windows XP, Windows Vista and Windows 7. An Early Access version for Mac OS X was also available for members of the JavaFX Partner Program at the time, while Linux support is planned for a future release of JavaFX.
JavaFX 2.0 makes use of a new declarative XML language called FXML[6][7].
There are currently various licenses for the modules that compose the JavaFX runtime:
During development, Sun explained they will roll out their strategy for the JavaFX licensing model for JavaFX first release.[11] After the release, Jeet Kaul, Sun's Vice president for Client Software, explained that they will soon publish a specification for JavaFX and its associated file formats, and will continue to open source the JavaFX runtime, and decouple this core from the proprietary parts licensed by external parties[12].
At JavaOne 2011, Oracle Corporation announced that JavaFX 2.0 would become open source[13]. Since December 2011, Oracle began to Open source the JavaFX code under the GPL+linking exception[1][14].
|
|
|